#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @FileName  :demo_ecshop_goods.py
# @Time      :2021/7/30 9:24
# @author    :Harry

def ecshop_goods():
    '''
    @case:ecshop 后台，商品管理
    1.进入后台登录
    2.添加新商品
    3.搜索商品
    4.查看商品
    5.删除商品
    6.退出
    '''
    from selenium import webdriver  # 引入模块
    import time  # 引入时间
    from selenium.webdriver.common.by import By #引入通用定位
    from selenium.webdriver.common.keys import Keys #引入键盘

    driver=webdriver.Chrome()  #实例化driver
    driver.maximize_window() #窗口最大化
    driver.implicitly_wait(30) #隐式等待30秒
    #1.进入后台登录
    driver.get("http://192.168.1.241/hdshop/admin/") #访问后台
    time.sleep(2)  #加载时间
    driver.add_cookie({"name":"ECSCP_ID","value":"34cefca1000b826f176a1490f91941e12f20a952"})
    driver.add_cookie({"name":"ECSCP[admin_pass]","value":"fba1e86908f364f5fee205d14dc69ff7"})
    driver.add_cookie({"name":"ECS_LastCheckOrder","value":"Thu%2C%2029%20Jul%202021%2013%3A45%3A11%20GMT"})
    driver.add_cookie({"name":"ECSCP[admin_id]","value":"1"}) #用seesion登录
    # driver.refresh()
    driver.get("http://192.168.1.241/hdshop/admin/") #重新访问页面

    # 2.添加新商品
    time.sleep(2)#加载时间
    driver.switch_to.frame('menu-frame') #通过id定位
    driver.find_element(By.XPATH,'//ul[@id="menu-ul"]/li[1]').click()
    driver.find_element(By.XPATH,'//ul[@id="menu-ul"]/li[1]/ul/li[2]/a').click()
    driver.switch_to.default_content() #退出到最外层

    # 点击添加新商品
    driver.switch_to.frame('main-frame') #通过id定位
    driver.find_element(By.NAME,'goods_name').send_keys('王牌钻石') # 输入商品名称
    driver.find_element(By.NAME,'cat_id').click()
    driver.find_element(By.NAME,'cat_id').send_keys(Keys.ARROW_DOWN) # 选择商品分类
    driver.find_element(By.XPATH,'//div[@id="tabbody-div"]/form/div/input[2]').click() # 点击确定
    time.sleep(5)#加载时间
    # 3.搜索商品
    # driver.find_element(By.XPATH,'/html/body/div[1]/form/input[1]').send_keys('王牌钻石') # 输入商品关键字
    driver.find_element(By.NAME, 'keyword').send_keys('王牌钻石')
    driver.find_element(By.XPATH, '//form[@name="searchForm"]/input[2]').click() #点击搜索
    time.sleep(2)#加载时间
    # 4.查看商品
    driver.find_element(By.XPATH,'//div[@id="listDiv"]/table[1]/tbody/tr[3]/td[12]/a[1]/img').click() #点击查看第一个商品
    # 5.删除商品
    time.sleep(2)
    handles=driver.window_handles #获取所有窗口
    print(handles)
    # driver.switch_to.window(handles[-1])  # 切换到第最新窗口
    # # driver.back() #后退页面
    # driver.switch_to.window(handles[-2])  # 切换到上一个窗口
    time.sleep(2)
    driver.find_element(By.XPATH,'//div[@id="listDiv"]/table[1]/tbody/tr[6]/td[12]/a[4]/img').click() #点击删除
    time.sleep(3)
    driver.switch_to.alert.dismiss()  #取消弹框
    driver.find_element(By.XPATH,'//div[@id="listDiv"]/table[1]/tbody/tr[6]/td[12]/a[4]/img').click() #点击删除
    driver.switch_to.alert.accept()  #确认弹框
    # 6.退出
    time.sleep(2)
    driver.switch_to.default_content() #退出到最外层
    driver.quit()
ecshop_goods()